home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 3 / Gold Medal Software - Volume 3 (Gold Medal) (1994).iso / bbsutils / thtmt227.arj / WHO.PPE (.txt) < prev   
PCBoard Programming Language Executable  |  1994-02-15  |  4KB  |  212 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 1.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     String   STRING001
  21.  
  22. ;------------------------------------------------------------------------------
  23.  
  24.     Gosub LABEL001
  25.     Gosub LABEL002
  26.     For INTEGER001 = 1 To 10
  27.         Gosub LABEL004
  28.     Next
  29.     Gosub LABEL003
  30.     Goto LABEL007
  31.     :LABEL001
  32.     GetUser
  33.     If (U_Cls == 1) Then
  34.         Cls
  35.         Newlines 2
  36.     Endif
  37.     If (ReadLine(PCBDat(), 90) == "0") Then
  38.         Newline
  39.         PrintLn "@X0F≡ @X09Sorry! No Network active! @X0F≡"
  40.         Newline
  41.     Else
  42.         Return
  43.         :LABEL002
  44.         DispFile PPEPath() + "who.hdr", 1 + 4
  45.         If (AnsiOn() == 1) Then
  46.             PrintLn "     @X70├── ───────────────────────── ─────────────────────────────────────┤@X07"
  47.         Else
  48.             PrintLn "     @X09--- ------------------------- ----------------------------------@X07"
  49.         Endif
  50.         Return
  51.         :LABEL003
  52.         If (AnsiOn() == 1) Then
  53.             PrintLn "     @X70└── ───────────────────────── ─────────────────────────────────────┘@X07"
  54.         Else
  55.             PrintLn "     @X09--- ------------------------- ----------------------------------@X07"
  56.         Endif
  57.         Return
  58.         :LABEL004
  59.         RdUNet INTEGER001
  60.         If (UN_Stat() == "") Then
  61.             Return
  62.         Else
  63.             Print "@POS:6@@X70│@X07@POS:8@@X0C"
  64.             Print INTEGER001, "@X0F"
  65.         Endif
  66.         If (PcbNode() == INTEGER001) Then
  67.             PrintLn "@POS:12@@X0B@X0BAvailable for Chat @POS:38@" + UN_Name() + " (" + UN_City() + ")" + "@POS:73@@X70│@X07"
  68.             Return
  69.         Else
  70.             Select Case (UN_Stat())
  71.                 Case " ", "V"
  72.                     PrintLn "@POS:12@No Caller this Node" + "@POS:73@@X70│@X07"
  73.                     Return
  74.                 Case "Y"
  75.                     PrintLn "@POS:12@Node Offline" + "@POS:73@@X70│@X07"
  76.                     Return
  77.                 Case Else
  78.                     Gosub LABEL005
  79.                 Endif
  80.         End Select
  81.         If (!(UN_Name() == "") || !(UN_City() == "")) Then
  82.             PrintLn "@POS:38@@X0E" + UN_Name() + "@POS:73@@X70│@X07"
  83.         Else
  84.             Newline
  85.         Endif
  86.         Return
  87.         :LABEL005
  88.         Select Case (UN_Stat())
  89.             Case "A"
  90.                 Print "@POS:12@@X0BAvailable for Chat"
  91.             Case "U"
  92.                 Print "@X0B@POS:12@Unavailable for Chat"
  93.             Case "O"
  94.                 Print "@POS:12@@X0BLogon Sequence"
  95.             Case "S"
  96.                 Print "@POS:12@@X0BAnswering a Script"
  97.             Case "B"
  98.                 Print "@X0C@POS:12@Out to Dos@X07"
  99.             Case "T"
  100.                 Gosub LABEL006
  101.             Case "D"
  102.                 Print "@POS:12@@X0BUser in a Door"
  103.             Case "C"
  104.                 Print "@POS:12@@X0BChatting with Sysop"
  105.             Case "G"
  106.                 Print "@POS:12@@X0BChatting with Group"
  107.             Case "M"
  108.                 Print "@POS:12@@X0BRcvd Broadcast Msg"
  109.             Case "E"
  110.                 Print "@POS:12@@X0BEntering a Message"
  111.             Case "P"
  112.                 Print "@POS:12@@X0BPaging Sysop"
  113.             Case "W"
  114.                 Print "@POS:12@@X0BNode dropped to Dos"
  115.             Case "R"
  116.                 Print "@POS:12@@X0BRecycling Node"
  117.             Case "L"
  118.                 Print "@POS:12@@X0BAutoLogoff Sequence"
  119.             Case "X"
  120.                 Print "@POS:12@@X0BDrop to Dos pending"
  121.             Case "F"
  122.                 Print "@POS:12@@X0BViewing a File"
  123.             Case "N"
  124.                 Print "@POS:12@@X0BRunning Event"
  125.             Case "Z"
  126.                 Print "@POS:12@@X0BNode is Offline"
  127.             Case Else
  128.                 Print "@POS:12@@X0CUnknown Activity@X07"
  129.         End Select
  130.         Return
  131.         :LABEL006
  132.         STRING001 = Left(UN_Oper(), 3)
  133.         Select Case (STRING001)
  134.             Case "(U)"
  135.                 Print "@POS:12@@X0EUploading@X07"
  136.             Case "(D)"
  137.                 Print "@POS:12@@X0CDownloading@X07"
  138.             Case Else
  139.                 Print "@POS:12@@X0DBeginning Transfer@X07"
  140.         End Select
  141.         Return
  142.     Endif
  143.     :LABEL007
  144.     End
  145.  
  146. ;------------------------------------------------------------------------------
  147. ;
  148. ; Usage report (before postprocessing)
  149. ;
  150. ; ■ Statements used :
  151. ;
  152. ;    1       End
  153. ;    1       Cls
  154. ;    62      Goto 
  155. ;    3       Let 
  156. ;    24      Print 
  157. ;    9       PrintLn 
  158. ;    31      If 
  159. ;    1       DispFile 
  160. ;    1       GetUser
  161. ;    6       Gosub 
  162. ;    10      Return
  163. ;    3       Newline
  164. ;    1       Newlines 
  165. ;    1       RdUNet 
  166. ;
  167. ;
  168. ; ■ Functions used :
  169. ;
  170. ;    12      +
  171. ;    32      ==
  172. ;    1       <
  173. ;    1       <=
  174. ;    2       >=
  175. ;    33      !
  176. ;    2       &&
  177. ;    3       ||
  178. ;    1       Left()
  179. ;    1       PCBDat()
  180. ;    1       PPEPath()
  181. ;    1       PcbNode()
  182. ;    1       ReadLine()
  183. ;    23      UN_Stat()
  184. ;    3       UN_Name()
  185. ;    2       UN_City()
  186. ;    1       UN_Oper()
  187. ;    2       AnsiOn()
  188. ;
  189. ;------------------------------------------------------------------------------
  190. ;
  191. ; Analysis flags : d
  192. ;
  193. ; d - Access PCBOARD.DAT ■ 2
  194. ;     Program gets the full pathname to PCBOARD.DAT, this may be usefull
  195. ;     for many PPE so they can find various informations on the system
  196. ;     (system paths, max number of lines in messages, ...) but it may also
  197. ;     be a way to gather vital informations.
  198. ;     ■ Search for : PCBDAT()
  199. ;
  200. ;------------------------------------------------------------------------------
  201. ;
  202. ; Postprocessing report
  203. ;
  204. ;    1       For/Next
  205. ;    0       While/EndWhile
  206. ;    7       If/Then or If/Then/Else
  207. ;    3       Select Case
  208. ;
  209. ;------------------------------------------------------------------------------
  210. ;                 AEGiS Corp - Break the routines, code against the machines!
  211. ;------------------------------------------------------------------------------
  212.